約 6,615,484 件
https://w.atwiki.jp/jennychan/pages/17.html
大抵の場合は、Win32 APIを使用しなくても済んでしまうのですが、たまに必要なときがあります。 ファイルIO .NET FrameworkのSystem.IOクラスでは、「\\.\physicaldrive0」などの物理ドライブに対するアクセスが出来ないので、CreateFile APIを使用する事になります。 参考資料は、Windows の ReadFile 関数を使用するで、ポイントは、 DllImportでDLLとAPIを指定する プロジェクトのビルドプロパティで、「アンセーフコードの許可」をチェック となります。 ただし、MSのサンプルでは、CreateFileメソッドの返却値が0以外のときは成功としているのですが、無効なドライブを指定した時は、0xffffffffが返され、正常終了扱いとなってしまいます。 なお、「\\.\c 」の様な、論理ドライブに対する処理は、System.IO.DriveInfoクラスを使用すれば可能です。 System.IO.DriveInfo = new System.IO.DriveInfo("c"); Console.WriteLine(string.Format("{0} {1} {2}Byte(s)", info.ToString(), info.DriveFormat, info.TotalSize)); 全てのドライブを取得するには、staticメソッドのGetDrivesを使用します。 foreach (System.IO.DriveInfo info in System.IO.DriveInfo.GetDrives()) { Console.WriteLine(string.Format("{0} {1} {2}Byte(s)", info.ToString(), info.DriveFormat, info.TotalSize)); } MSのWindows の ReadFile 関数を使用するの、CreateFileのエラー判定処理を修正すると共に、ドライブの容量を取得するDeviceIoControl処理を追加した、C#のコンソールアプリケーションベースのコードをメモとして載せておきます。 なお、DeviceIoControl処理の詳細は、Microsoft Platform SDKのWinIoCtl.hを見るのが一番かもしれません。 class FileReader { const uint GENERIC_READ = 0x80000000; const uint FILE_SHARE_WRITE = 0x00000002; // 物理ディスクを指定する場合、OPEN_EXISTINGを指定しなければいけないらしい const uint OPEN_EXISTING = 3; System.IntPtr handle; [System.Runtime.InteropServices.DllImport("kernel32", SetLastError = true)] static extern unsafe System.IntPtr CreateFile ( string FileName, // file name uint DesiredAccess, // access mode uint ShareMode, // share mode uint SecurityAttributes, // Security Attributes uint CreationDisposition, // how to create uint FlagsAndAttributes, // file attributes int hTemplateFile // handle to template file ); [System.Runtime.InteropServices.DllImport("kernel32", SetLastError = true)] static extern unsafe bool ReadFile ( System.IntPtr hFile, // handle to file void* pBuffer, // data buffer int NumberOfBytesToRead, // number of bytes to read int* pNumberOfBytesRead, // number of bytes read int Overlapped // overlapped buffer ); [System.Runtime.InteropServices.DllImport("kernel32", SetLastError = true)] static extern unsafe bool CloseHandle ( System.IntPtr hObject // handle to object ); // ドライブの容量を取得するためにDeviceIoControlを使用する const uint IOCTL_DISK_GET_LENGTH_INFO = 0x7405c; [System.Runtime.InteropServices.DllImport("kernel32", SetLastError = true)] static extern unsafe bool DeviceIoControl( System.IntPtr hFile, // handle to file uint dwIoControlCode, // 実行する動作の制御コード void* lpInBuffer, // 入力データを供給するバッファへのポインタ uint nInBufferSize, // 入力バッファのバイト単位のサイズ void* lpOutBuffer, // 出力データを受け取るバッファへのポインタ uint nOutBufferSize, // 出力バッファのバイト単位のサイズ uint* lpBytesReturned, // バイト数を受け取る変数へのポインタ int Overlapped // overlapped buffer ); public bool Open(string FileName) { // open the existing file for reading handle = CreateFile ( FileName, GENERIC_READ, FILE_SHARE_WRITE, 0, OPEN_EXISTING, 0, 0 ); // 物理ドライブ処理のエラーは、0xffffffffとなる if (handle != System.IntPtr.Zero (uint)handle.ToInt32() != (uint)0xffffffff) { return true; } else { return false; } } public unsafe int Read(byte[] buffer, int index, int count) { int n = 0; fixed (byte* p = buffer) { if (!ReadFile(handle, p + index, count, n, 0)) { return 0; } } return n; } public bool Close() { return CloseHandle(handle); } // ディスクの容量を取得する public unsafe long GetDiskSize() { long lDiskSize = 0; uint nBytes = sizeof(long); bool bResult = DeviceIoControl(handle, IOCTL_DISK_GET_LENGTH_INFO, null, 0, lDiskSize, nBytes, nBytes, 0); return lDiskSize; } } class Program { static void Main(string[] args) { FileReader fr = new FileReader(); for (int i = 0; i = 9; i++) { string sDrivePath = string.Format(@"\\.\physicaldrive{0}", i); if (fr.Open(sDrivePath)) { long lDiskSize = fr.GetDiskSize(); fr.Close(); double dSize = lDiskSize / 1000000; if (dSize 1000) { dSize /= 1000; System.Console.WriteLine( string.Format("Drive{0} {1,7 F1}GB", i, dSize)); } else System.Console.WriteLine( string.Format("Drive{0} {1,7 F1}MB", i, dSize)); } } return; } } レジストリ .NET Frameworkでは、Microsoft.Win32.Registryからルートレジストリをアクセスできます。 たとえば、ADO.NET 2.0では、Microsoft Data Access Components(MDAC)2.8以降のバージョンが必要とされています。 MDACのバージョンは、レジストリのHKEY_LOCAL_MACHINE\Software\Microsoft\DataAccess\FullInstallVerを取得する事で確認できます。 そこで、MDACのバージョンを確認するメソッドは、 private bool ChkMDAC() { string sFullVer = (string)Microsoft.Win32.Registry.GetValue (@"HKEY_LOCAL_MACHINE\Software\Microsoft\DataAccess", "FullInstallVer", ""); bool bResult = false; if (!string.IsNullOrEmpty(sFullVer)) { string[] sVer = sFullVer.Split( . ); int iVer1 = Convert.ToInt16(sVer[0]); int iVer2 = Convert.ToInt16(sVer[1]); if (iVer1 2 || (iVer1 == 2 iVer2 80)) bResult = false; else bResult = true; } return bResult; } の様になります。 ※ マイクロソフトのサポート情報では、レジストリ上のバージョン情報はあてにならない場合があるので、Component Checkerというツールを使って確認する事を推奨していますが、不特定多数のユーザ向けのソフトウェアの場合、Component Checkerツールのインストールも要求するような事は非現実的だと思います。 また、レジストリのバージョン情報を参照するときも、FullInstallVer値と、Version値の両方の値を確認するように推奨していますが、手元のマシンの場合、 FullInstallVer "2.81.1117.0" Version "2.0.0" となっています
https://w.atwiki.jp/cplusplus/pages/15.html
API timeSetEvent マルチメディアタイマ。 MMRESULT timeSetEvent( UINT uDelay, UINT uResolution, LPTIMECALLBACK lpTimeProc, DWORD dwUser, UINT fuEvent ); ヘッダー:mmsystem.h 内で宣言 インポートライブラリ:winmm.lib を使用 猫でも [http //hp.vector.co.jp/authors/VA016117/]
https://w.atwiki.jp/hebihebi/pages/58.html
目次 伊吹の詳細設定 ロボ子(仮)の詳細設定 伊吹の詳細設定 胸囲 C 下着 つけていない 下半身装備 ハーフパンツ 上部装備 黒のタンクトップ 超敏感 SM ノーマル 弱点 首 好きな女のタイプ 興味なし 一人遊びの頻度 週一回 髪型 サイドテール 髪の色 慎ましい金髪 瞳の色 オッドアイ 左目 赫 右目 紺碧 肌の色 青白 身長 146~150 魔法少女姿上半身装備 正統派魔法少女服(ただし肩と脇は露出) 下半身装備 スリット入りロングスカート アクセサリー サングラス(頭においてある感じ) 色 よく見るとわずかに透けて見える黒 だめなら普通に黒 ロボ子(仮)の詳細設定 髪の色 くすんだ黒髪 髪型 ショートボブ 目の色 普段、赤 リミッター解除時、金 口癖 「~であります」 人間時の肌の色 肌色 胸のサイズ Bカップ
https://w.atwiki.jp/juria/pages/76.html
Streamripper win32 console MyWiki より転記[2007-10-09][2006-05-23] 以下は ver.1.61.19 についての記述です。 (2007-10-09 時点の最新ヴァージョンは 1.62.2) http //streamripper.sourceforge.net/index.php ネットラジオを録音。(単一ファイル + cue シート、トラック別) SHOUTcast , Icecast , Tuner2 対応。AACの放送が増えましたね。 Streamripper winamp 2/5 plugin は有名ですが、敢えてコンソール版 GUI 版 StreamRipper32 は SHOUTcast のジャンル検索が可能。 ストリームの IP が 403 Forbidden になる場合は、Option の User Agentを 空白に。 コンソール版Usage 拡張子はストリーミングにより自動で付けられる(.mp3/.aac/.ogg) streamripper URL [OPTIONS] -h - Print this listing -v - Print version info and quit -a [file] - Rip to single file, default name is timestamped -A - Don t write individual tracks -d dir - The destination directory -D pattern - Write files using specified pattern %S Stream %A Artist %T Title %a Album %D Date and time (per song) %d Date and time (per execution) %q Sequence number (automatic detection) %Nq Sequence number (starting from number N) %% Percent sign("%%S/%%A/%%T") -s - Don t create a directory for each stream -r [[ip ]port] - Create relay server on base ip port, default port 8000 -R #connect - Max connections to relay, default 1, -R 0 is no limit -L file - Create a relay playlist file -z - Don t scan for free ports if base port is not avail -p url - Use HTTP proxy server at url -o always - Always overwrite tracks in complete -o never - Never overwrite tracks in complete -t - Don t overwrite tracks in incomplete -c - Don t auto-reconnect -l seconds - Number of seconds to run, otherwise runs forever -M megabytes - Stop ripping after this many megabytes -q [start] - Add sequence number to output file -i - Don t add ID3 tags to output file -u useragent - Use a different UserAgent than "Streamripper" -w rulefile - Parse metadata using rules in file. -m timeout - Number of seconds before force-closing stalled conn -k count - Skip over first count tracks before starting to rip -T - Truncate duplicated tracks in incomplete -E command - Run external command to fetch metadata --quiet - Don t print ripping status to console --debug - Save debugging trace --xs_??? - Invoke splitpoint detection rules (see README/man page) Tutorial (console) Documentation や同梱の README を参考に ストリーミングをトラック別に録音 streamripper URL ストリーミングを一つのファイルとしてリッピング、cue シートを作成 streamripper URL -a (ファイル名はタイムスタンプから付けられ、トラック別のファイルも作成される。 トラック別ファイル名は、アーティスト名 - 曲名) トラック別のファイルを作成したくない時は、-A を追加 streamripper URL -a [filename] -A 出力先フォルダを指定 streamripper URL -d /music/stream -s (-s : stream ごとにフォルダを作らない) フォルダ名やディレクトリ構成を指定したい streamripper URL -D %A/%T (-A 付加時には無効。デフォルトのフォルダ名は stream 名) 最初の n 曲をスキップしてリッピングを開始する streamripper URL -a -k n (-A 付加時には無効。) cueシートとシングルファイルは日付時刻をファイル名に。 トラック別ファイルは日付時刻名のフォルダ内に出力し、ファイル名は [連番-アーティスト名-タイトル]、1曲目をスキップ。 streamripper URL -a %d -D %d/%1q-%A-%T -k 1 -
https://w.atwiki.jp/reisiki/pages/24.html
クラス siki win32 WindowBase ドキュメント WindowBase ヘッダファイル window_base.hpp ソースファイル window_base.cpp 関連項目 名前空間 siki win32 クラス GameWindow [09/05/05 19 56][][編集]
https://w.atwiki.jp/timidity/
TiMidity++だけを語り尽くすスレ@wiki このwikiは2ちゃんねるDTM板「TiMidity++だけを語り尽くすスレ」のまとめサイトです。 現行スレ TiMidity++だけを語り尽くすスレ12©2ch.net http //egg.2ch.net/test/read.cgi/dtm/1418139563/ 前スレ TiMidity++だけを語り尽くすスレ11 http //anago.2ch.net/test/read.cgi/dtm/1309581037/ 避難所http //jbbs.shitaraba.net/bbs/read.cgi/computer/42137/1499269478/ 新テンプレ案http //www15.atwiki.jp/timidity/pages/19.html
https://w.atwiki.jp/unity_memo/pages/17.html
▼常にGameウィンドウ内にGUIを表示 @script ExecuteInEditMode() ▼GUI描画 function OnGUI (){ //ボタン等をここに追加 } ▼ボタン if (GUI.Button(Rect (xxx,yyy,www,hhh), "ボタン")){ } ▼ボックス GUI.Box (Rect(xxx,yyy,www,hhh), "ボックス"); ▼ラベル GUI.Label(Rect(xxx,yyy,www,hhh), "ラベル"); ▼テキストボックス(1行) GUI.TextField(Rect(xxx,yyy,www,hhh), "テキスト"); ▼テキストボックス(複数行) GUI.TextArea(Rect(xxx,yyy,www,hhh), "テキスト1\nテキスト2\nテキスト3"); ▼スクロールバー private var ppp Vector2; function Update (){ if( Input.touchCount 0 ){ var touch = Input.touches[0]; if (touch.phase == TouchPhase.Moved){ ppp.y += touch.deltaPosition.y; } } } function OnGUI(){ var aaa Rect = Rect(xxx1,yyy1,www1,hhh1); //スライドの描画領域 var bbb Rect = Rect(xxx1,yyy1,www2,hhh2); //スライドの中身 ppp = GUI.BeginScrollView(aaa, ppp, bbb); //スクロールさせたいボタン等をここに追加 GUI.EndScrollView(); } 水平スライダーバーを0~100まで0.5刻みにする GUI.HorizontalSlider(Rect(xxx,yyy,www,hhh),Mathf.Round((Mathf.Round(fff*10)/10)*2)/2,0,100); スタイル(スキン)設定 var sss GUIStyle; function OnGUI (){ GUI.skin.button = sss; } スライダーバーのツマミ部分のスタイル設定時の注意! ※ 「Fixed Width」と「Fixed Height」に数値を入れないと表示されないので注意!! フォントサイズをスクリプトで変更 sss.fontSize = 123; リンク UnityのGUIの作り方
https://w.atwiki.jp/mediacoder/pages/36.html
LAME MP3詳細設定 LAMEを利用してエンコードを行うには、オーディオタブからLAME MP3を選択する。 なお、LAME設定タブのユーザーインターフェイスは、ver.0.6.1.4050にて、以下のように仕様が変わっている。 MediaCoder-0.6.1.4048以前 MediaCoder-0.6.1.4050以後 Preset Custom=好みの設定にする Medium(VBR)=VBR 165kbps相当 Standard(VBR)=VBR 190kbps相当 Extreme(VBR)=VBR 245kbps相当 他は書いてある通り Bitrate(ABR/CBR) ABRまたはCBRの品質設定 値が大きいほど高品質&サイズ大 Quality(VBR) VBRの品質設定 値が大きいほど高品質&サイズ大 Minimum Allowed Bit Rate(VBR) VBRの最低ビットレート設定 Maximum Allowed Bit Rate(VBR) VBRの最高ビットレート設定 Encoding Mode VBR(可変),ABR(平均),CBR(一定)の各ビットレート設定から選択 VBR=音質を一定に保つためにビットレートを大きく変化させる。 ABR=ビットレートの平均値をできるだけ一定に保ちながら、音質も可能な限り一定に保とうとする。 CBR=ビットレートを指定の値に。音質は一定にはならない。 Stereo Mode Auto,Stereo,Joint Stereo,Dual Channel,Monoから選択 ReplayGain Keep All Frequencies Low-pass Filter Frequencies(Khz) High-pass Filter Frequencies(Khz) Mark as Copyright Mark as Non-orignal Error Protection Disable the Bit Reservoir Comply to ISO MPEG Spec ID3 Tagging Fast mode(lower quality) Path LAMEのパス
https://w.atwiki.jp/timidity/pages/17.html
*CFGファイル置き場 一石氏cfg 田中ゆうこのTimidityフォルダ 一石氏cfg 鬼バランスを誇る一石氏のCFG Yahooブリーフケースが削除されたようなので転載 http //www15.atwiki.jp/timidity/pub/isseki.zip まずは、一石氏のCFGファイルに同包されているReadme.txtを読みましょう。 merlin_gmv32とSGMv1.5.sf2は下記参照。 TimMidityスレ8よりmerlin_gmv32.sf2http //www.megaupload.com/?d=EKL5UXFK 一石氏のCFGファイルに同包されているReadme.txtに書かれているURLからだと、バージョンアップされたSGM-V2.01しかダウンロードできないため、SGM180v1.5.sf2を手に入れるには他のところからダウンロードする必要があります。SGM180v1.5.zipでググるとたくさん出てくるので、そちらからダウンロードさせてもらいましょう。 田中ゆうこのTimidityフォルダ こっそり追加 http //cid-278ef57b2e0903c9.skydrive.live.com/browse.aspx/.Public
https://w.atwiki.jp/stgbuilder/pages/422.html
<ランキングの詳細設定> ランキング用のレイアウトを設定。(v0.99.15以降) (詳細設定) フォント:フォントを指定。(指定しない場合は、システムフォントで表示) カーソル音:カーソル移動時の効果音を指定。 決定音:入力決定時の効果音を指定。 キャンセル音:キャンセル決定時の効果音を指定。 カーソル:カラーを32ビットARGBで指定。 (初期値 0x80FFFFFF) ランキング全体数:ランキングとして表示される順位の全体数を指定。 (初期値 100) 1ページ内表示数:1ページ内に表示される順位の数を指定。 (初期値 10) 1行の表示幅:1行に表示される欄の幅を指定。 (初期値 30) 名前入力可能数:入力可能な文字数を指定。 (初期値 10) 表示項目:表示させる項目を、順位,スコア,名前,クリアステージ,自機タイプ,リプレイIDから選択。 表示オフセットX:X方向にオフセットさせる量(Pix)を指定。 (初期値 0,80,200,400,480,500) 表示オフセットY:Y方向にオフセットさせる量(Pix)を指定。 (初期値 0) 表示フォーマット:表示させる際の書式フォーマットを指定。* (初期値 指定なし) 表示カラー: (初期値 0xFFFFFFFF) 表示項目 表示オフセットX 表示オフセットY 表示フォーマット 表示カラー 順位 0 0 0xFFFFFFFF スコア 80 0 0xFFFFFFFF 名前 200 0 0xFFFFFFFF クリアステージ 400 0 0xFFFFFFFF 自機タイプ 480 0 0xFFFFFFFF リプレイID 500 0 0xFFFFFFFF レイアウト編集>>レイアウトパーツの詳細,レイアウトパーツの位置指定,レイアウトパーツの色指定